import java.util.Scanner;

public class test {
    //洗牌
    import java.util.*;
    public class Main{
        public static void main(String[]args){
            Scanner sc=new Scanner(System.in);
            int groups=sc.nextInt();
            for(int i=0;i<groups;i++){
                //读入每组数据
                int n=sc.nextInt();
                int k=sc.nextInt();
                int[] cards=new int[2*n];
                for(int j=0;j<2*n;j++){
                    cards[j]=sc.nextInt();
                }
                //洗牌
                playCard(cards,n,k);
            }
        }
        //n为牌数一半，k为洗牌次数
        public static void playCard(int[] cards,int n,int k){
            //编号为i是牌，最后放到2*i位置
            //编号为i+n的牌最后放到2*i+1位置
            for(int i=0;i<k;i++){
                //一次洗牌的过程
                int [] newCards=new int [cards.length];
                for(int j=0;j<n;j++){
                    //遍历编号为0~n-1的牌
                    newCards[2*j]=cards[j];
                    newCards[2*j+1]=cards[j+n];
                }
                cards=newCards;
            }
            //洗完之后从上往下打印
            printCard(cards);
        }
        public static void printCard(int[]cards){
            for(int i=0;i<cards.length-1;i++){
                System.out.print(cards[i]+" ");
            }
            System.out.println(cards[cards.length-1]);
        }
    }
}
